Repository navigation
Add retained text queries and bind multiplayer actions to player identities (UI-03/UI-09) - #210
Merged
Merged
Conversation
Add bounded capacity tests, cubemap parity checks, capture write-failure handling, executor resource profiling and a foreground presentation harness. Record scoped evidence and retain outstanding hardware and content gates.
# Conflicts: # docs/dev/release-completion.md
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Multiplayer menu actions now stay attached to the selected connection when a player leaves and another takes the same slot. This covers delayed mute/unmute, retained Admin selection/actions, authenticated rcon administration, and kick votes from menu selection through server admission, voting and execution. A stale kick target blocks the entire mixed draft; explicitly choosing a current player or No one acknowledges the change. The classic menu also rejects the whole stale draft.
Choices can declare a catalog context independently of their value. A changed catalog closes the popup and cancels held or queued proposals, including same-label replacements and ABA changes. The kick choice freezes its ordered catalog through the adapter/session boundary; both legacy and packed kick requests carry the selected 32-bit identity. Non-kick wire formats are unchanged. Install matching engine, multiplayer module and menu content (
mp.protocol 4). Remote kick votes require server capabilitysi_uiTargetProtocol=2; current clients retain version-1 mute/Admin support and never fall back to ambiguous slot-only kick requests.Retained interfaces also gain public localized binding-name refresh and plain UTF-8 text-fit queries. CONTROLS uses the shared path for all 49 bindings while preserving capture, clear and rebind behavior. Fitting uses the current label width/font metrics, returns whole scalar boundaries, and leaves the caller's output intact for invalid or unavailable queries.
Validation on Windows x64 passes the fresh debugoptimized build/stage, all ten affected native suites, the adapter with all 20 mutation controls rejected, and the player-target harness with all 10 controls rejected. The session gate passes 1,033 checks plus server-card/loading/prompt coverage. Localization/label fitting covers all 12 languages; vote, encoding, path and validation-workflow regressions pass. OpenGL/English at 1280x720 and Vulkan/French at 1920x1080 exercise same-name replacement, blocked mixed drafts, explicit clearing, a fresh kick and return to gameplay. All 22 final engine screenshots were reviewed. Earlier text-query evidence includes 14 reviewed SP/MP captures and capture/rebind/clear at 200% text size.
Exact source/binary/report/capture bindings and failed attempts are retained in
.tmp/ui-vote-targets/validation-evidence.json, with previous increments in.tmp/ui-roadmap-next/validation-evidence.jsonand.tmp/ui-roadmap/validation-evidence.json. The current runs have no retained-UI warnings or errors, but each reports 179 stock/bot late-precache warnings and one missingburn_misc_smimage. Automatic approval review blocked disposable fixture cleanup; no files were removed. Current platform CI is pending; previous-head ARM64 save-codec timeout and unavailable Linux ASan failure logs are not resolved by these changes.This is a bounded UI-03/UI-09 increment. Match Control identity operands, ban-list refresh, map-transition lifetimes, delayed remote/device/platform qualification, live IME, shaping/bidi, world output, the editor and full corpus/performance/human acceptance remain open. No product requirement, migration resource or final gate is accepted.
Integration note: the branch includes earlier local-main Q4/MP/Vulkan commits that are not yet on remote main. Until the base catches up, the aggregate diff includes that integration work. The UI implementation commits are
e4cb0e63d,fc979c078and4a5c2a295. Keep this PR draft until its base, review and platform checks are reconciled.